Network path optimization method and system

ABSTRACT

A network path optimization method includes: in response to a network access request, computing and sending an optimal path having a path code and carrying a path parameter; adding a path tag to the optimal path based on a real path; determining a parameter variation between the optimal path and the real path based on the path parameter and the path tag; and updating the optimal path and the path parameter based on the parameter variation.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of International Application No.PCT/CN2017/106577, with an international filing date of Oct. 17, 2017,the entire contents of which are incorporated herein by reference.

TECHNICAL FIELD

The present application relates to the field of application deliverynetwork (ADN), and in particular, relates to a network path optimizationmethod and system based on data analysis.

BACKGROUND

With enhancement of hardware processing capabilities specific to networktransmission and popularity of mobile terminals, network loads arebecoming greater and greater, and users are imposing stricter andstricter requirements on network transmission performance and security.

An application delivery network (ADM), by using a corresponding networkoptimization/acceleration device, ensures that service applications ofthe users may be quickly, securely and reliability delivered to internalusers and external service clusters by means of software and hardwaredevices and network optimization.

SUMMARY

An embodiment of the present application provides a network pathoptimization method. The method includes: in response to a networkaccess request, computing and sending an optimal path having a path codeand carrying a path parameter; adding a path tag to the optimal pathbased on a real path; determining a parameter variation between theoptimal path and the real path based on the path parameter and the pathtag; and updating the optimal path and the path parameter based on theparameter variation.

Another embodiment of the present application provides a network pathoptimization method. The method includes: in response to a networkaccess request, computing and sending an optimal path having a path codeand carrying a path parameter; acquiring a parameter variation betweenthe optimal path and a real path by analyzing the path parameter and apath tag, the path tag being added to the optimal path based on avariation of the real path; and updating the optimal path and the pathparameter based on the parameter variation.

Another embodiment of the present application provides a network pathoptimization system. The system includes: a control server, a pluralityof network access terminals and a cluster of data processing terminals,the plurality of network access terminals constructing a network, theplurality of network access terminals being communicably connected tothe control server and the data processing terminal cluster, and thecontrol server being communicably connected to the data processingterminal cluster; wherein the control server is configured to, inresponse to a network access request, compute and send an optimal pathhaving a path code and carrying a path parameter; the access networkterminal is configured to add a path tag to the optimal path based on areal path; the cluster of data processing terminals is configured todetermine a parameter variation between the optimal path and the realpath based on the path parameter and the path tag; and the controlserver is further configured to update the optimal path and the pathparameter based on the parameter variation.

BRIEF DESCRIPTION OF THE DRAWINGS

One or more embodiments are illustrated by way of example, and not bylimitation, in the figures of the accompanying drawings, whereincomponents having the same reference numeral designations represent likecomponents throughout. The drawings are not to scale, unless otherwisedisclosed,

FIG. 1 is a schematic architectural diagram of a network pathoptimization system according to an embodiment of the presentapplication;

FIG. 2 is a schematic diagram of an optimal path in the network pathoptimization system according to an embodiment of the presentapplication;

FIG. 3 is a schematic diagram of a real path in the network pathoptimization system according to an embodiment of the presentapplication;

FIG. 4 is a schematic flowchart of a network path optimization methodaccording to an embodiment of the present application;

FIG. 5 is a schematic flowchart of operations at a control server in thenetwork path optimization method according to an embodiment of thepresent application;

FIG. 6 is a schematic flowchart of operations at a network accessterminal in the network path optimization method according to anembodiment of the present application;

FIG. 7 is a schematic flowchart of operations at a data processingterminal in the network path optimization method according to anembodiment of the present application;

FIG. 8 is a schematic modular diagram of a control server in the networkpath optimization system according to an embodiment of the presentapplication;

FIG. 9 is a schematic modular diagram of a network access terminal inthe network path optimization system according to an embodiment of thepresent application;

FIG. 10 is a schematic modular diagram of a data processing terminal inthe network path optimization system according to an embodiment of thepresent application; and

FIG. 11 is a schematic hardware architectural diagram of the networkpath optimization method according to an embodiment of the presentapplication.

DETAILED DESCRIPTION

For clearer descriptions of the objectives, technical solutions, andadvantages of the present application, the present application isfurther described with reference to specific embodiments and attacheddrawings. It should be understood that the specific embodimentsdescribed herein are only intended to explain the present applicationinstead of limiting the present application.

In traditional network optimization of the application delivery network,selection of an optimal path is dependent on a network delay and apacket loss ratio and the like information that are detected in realtime, and finally an optimal path is selected based on a shortest pathalgorithm. The current path and network conditions may be judged eachminute based on the current detected data, to determine whether toswitch a path, with no history reference data.

However, since the network environment is complicated, the detected datais occasional, and after a computed optimal path is linked, theconnection may possibly be unstable. The path accessed is a pathselected based on an optimal path algorithm. Since the network iscomplicated, network conditions between two adjacent devices on theoptimal path may be subject to a fault and thus the devices may not belinked or the like, or some link errors or the like may be caused.

The optimal path in the related art fails to accurately reflect a reallink path, and thus history path conditions fail to be indicated. Inaddition, for some special customers, paths need to be selected manuallybased on experience. During path selection, no history data may bereferenced, and thus reliability and efficiency are not high. Therefore,the network optimization solution in the application delivery network inthe related art needs to be further improved.

In the network path optimization method and system according to theembodiments of the present application, a dynamically adjusted optimalpath is provided in response to a user request, when a network accessterminal is accessed, a path tag may be added based on a parametervariation between a real path and an optimal path, and a history log maybe established, such that the optimal path is dynamically updated basedon the parameter variation and the path tag. In this way, switchingfrequency of link paths is reduced, and network links are more stable.

As illustrated in FIG. 1, the network path optimization method andsystem are applied to an application delivery network (ADN), and anetwork optimization server cluster is constructed, which includes: anapplication delivery network 20 constructed by network access terminals,a control server 10, a data processing terminal cluster 30 forpracticing massive data analysis, a data storage server 40 and aninterface server 50. The network path optimization system codes acomputed optimal path, adds a path parameter and an event tag, controlsthe control server 10 as a processing center based on functionality ofservers, accelerates establishment a link between access paths, reducesswitching frequency of link paths, and makes network links more stable.

The application delivery network 20 is constructed by a plurality ofnetwork access terminals 20-1, 20-2, 20-3 to 20-n. These network accessterminals are network access points of the application delivery network20. The network access points are located on an outer side of the edgeof the network, and are access points to the interior of the network.Services provided by an Internet service provider (ISP) are accessed viathe network access terminals. The services include Internet access, widearea network connection or public switched telephone network (PSTN). Thenetwork access terminal (a POP terminal) provides a link to a serviceand a station. With respect to the Internet service provider, thenetwork access terminal is a network access point for access theInternet from one place to another. Generally, an ISP or an onlineservice provider has one or a plurality of network access points on theInternet. The number of network access points owned by the ISP may beused as a standard for measuring scale and growth ratio of the serviceprovider. The network access terminal may be independent of a servernode or may be mounted in a leased space of a telecommunication carrier,and a network access end generally includes a router, a server and thelike.

The data processing terminal cluster 30 receives the optimal path andthe path tag added by the application delivery network 20 to the optimalpath by virtue of massive data processing, to extract information of thereal path and update reference data for forming the optimal path.

Embodiment 1

Further referring to FIG. to FIG. 3, a network path optimization systemaccording to this embodiment includes a control server 10, a pluralityof network access terminals 20-1 to 20-n, a data storage server 40, aninterface server 50 and a cluster of data processing terminals 30-1 to30-n. The plurality of network access terminals 20-1 to 20-n arenetworked to construct an application delivery network. The plurality ofnetwork access terminals 20-1 to 20-n are connected to the controlserver, and the plurality of network access terminals 20-1 to 20-n arecommunicably connected to the cluster of data processing terminals 30-1to 30-n. The control server 10 is communicably connected to the clusterof data processing terminals 30-1 to 30-n. Parameter variation datagenerated by the cluster of data processing terminals 30-1 to 30-n issent to the data storage server 40 for storage. The control server 10periodically requests a path parameter of an optimal path and aparameter variation thereof from the interface server 50. The path tagadded by the network access terminals 20-1 to 20-n and the history loggenerated thereby are stored in the cluster of data processing terminals30-1 to 30-n. The data storage server 40 stores a parameter variationresult that is computed, and the optimal path is modified and adjustedbased on the path parameter and the parameter variation.

When a user initiates a network access request, in response to thenetwork access request, the control server 10 computes an optimal pathhaving a path code and carrying a path parameter, sends information ofthe optimal path to a network access terminal for receiving the networkaccess request, for example, the network access terminal 20-1, in theapplication delivery network 20, and meanwhile sends the information ofthe optimal path to the cluster of data processing terminals 30-1 to30-n.

Upon receiving the optimal path having the path code and carrying thepath parameter, the network access terminal 20-1 establishes a linkbased on the optimal path, and adds a path tag to the received optimalpath based on a link condition of a real path, for example, a tagindicative of an average delay ratio and a packet loss ratio or an errorcode or the like between nodes.

The cluster of data processing terminals 30-1 to 30-n determines aparameter variation between the optimal path and the real path based onthe path parameter and the path tag.

The cluster of data processing terminals 30-1 to 30-n is communicablyconnected to the data storage server 40. The data storage server 40stores a computation result of the cluster of data processing terminals30-1 to 30-n, for example, the parameter variation.

The control server 10 updates the optimal path based on the parametervariation, such that a stable and rapid connection link that isconsistent with the network condition is provided in response to theuser request.

Referring to FIG. 8, the control server includes an allocating module12, an acquiring module 14 and an adjusting module 16.

The optimal path is originated from a user terminal 60, and terminatedat an access source station 70 through a plurality of access terminalnodes of the application delivery network 20, including a plurality ofnodes. In this embodiment, the path parameter includes a path weight ofa node and time elapsed for computing the optimal path; wherein thecluster of data processing terminals is further configured to analyze adelay ratio or a packet loss ratio or relevant parameter status andparameter variations between nodes on the optimal path, and determinenode status.

On the network path optimization, the control server is intended to:

compute the optimal path having the path code and carrying the pathparameter, and send the information of the optimal path to a networkaccess terminal for receiving the network access request, for example,the network access terminal 20-1, in the application delivery network20, and meanwhile send the information of the optimal path to thecluster of data processing terminals 30-1 to 30-n.

The acquiring module 14 acquires a parameter variation between theoptimal path and the real path by analyzing the path parameter and thepath tag, wherein the path tag is added to the optimal path based on thereal path.

The adjusting module 16 updates the optimal path updated based on theparameter variation.

The optimal path may generally include a plurality of nodes. In thisembodiment, the path parameter includes a path weight of a node and timeelapsed for computing the optimal path.

The adjusting module 16 analyzes the delay ratio or the packet lossratio between the nodes on the optimal path, and determines the nodestatus.

The adjusting module 16 further adjusts the path weight of the nodebased on the node status, and updates the relevant path parameter andthe optimal path based on the adjusted path weight.

The adjusting module 16 makes a corresponding adjustment based on variedparameter when computing the optimal path and selecting the path if theoptimal path varies.

In this embodiment, the parameter variation further includes an errorcode, and the control server 10 predefines an adjustment threshold basedon the error code. The control server 10 scans a parameter variationunder a corresponding path based on the path code, and the controlserver 10 adjusts a path parameter of the corresponding path when ascanned error code is greater than or equal to an adjustment threshold.The control server 10 adjusts a weight of a node with the error code onthe corresponding path when the scanned error code is constantly greaterthan or equal to the adjustment threshold. For example, when the weightis 0, it indicates that the node shall not be used any longer; and whenthe weight is 1, it indicates that the normal may be normally used.

When the control server 10 adjusts the optimal path, during datadetection, the delay ratio or the packet loss ratio between two networkaccess terminals 20 on the optimal path may be subject to a peak. Inthis case, the control server 10 may not know whether the peakaccidentally occurs or not when computing the optimal path. To judgewhether the peak is present in computing the optimal path, the controlserver 10 needs to make a judgment based on a history log. When the peakis present, the control server 10 may compute the optimal path based onan average time computed by the cluster, and thus the impact caused bythe peak may be prevented when the control server 10 computes theoptimal path.

Alternatively, the control server 10 periodically requests theinformation of the optimal path from the interface server. When thecontrol server 10 detects that a network access terminal on the optimalpath having a specific code is subject to an error code, if a ratio ofoccurrences of the error code reaches or even exceeds a ratio thresholdpredefined by the control server 10, the control server 10 may requestthe information of the optimal path for a longer time. If the ratio ofoccurrences of the error code constantly exceeds the ratio thresholdpredefined by the control server 10, the access terminal node may not beused, and the weight of the access terminal node is modified to 0. Thatis, the control server 10 denies the access terminal nodes with theweight of 0 when computing the optimal path.

Referring to FIG. 9, the plurality of network access terminals 20-1 to20-n construct an application delivery network connected to the controlserver, wherein each network access terminal includes a receiving module25, a tagging module 27 and a transferring module 29.

On the network path optimization, each of the network access terminals20-1 to 20-n implements the following functions:

The receiving module 25 receives an optimal path having a path code andcarrying a path parameter that is computed in response to a networkaccess request sent by the control server 10.

The tagging module 27 adds a path tag to the optimal path based on areal path.

The transferring module 29 uploads the optimal path with the added pathtag to a cluster of data processing terminals 30-1 to 30-n, wherein thecluster of data processing terminals 30-1 to 30-n determines a parametervariation between the optimal path and a real path based on the pathparameter and the path tag.

The receiving module 25 receives the optimal path updated based on theparameter variation.

Referring to FIG. 10, each data processing terminal in the cluster ofdata processing terminals 30-1 to 30-n includes a receiving module 36,an extracting module 36, an analyzing module 37 and an interface module38.

On the network path optimization, each data processing terminalimplements the following functions:

The receiving module 35 receives an optimal path having a path code andcarrying a path parameter that is computed in response to a networkaccess request sent by the control server 10.

The extracting module 36 acquires a path tag that is added to theoptimal path based on a real path and generated by the network accessterminal.

The analyzing module 37 determines a parameter variation between theoptimal path and the real path based on the path parameter and the pathtag, wherein the parameter variation is used for updating the optimalpath.

The interface module 38 transfers the parameter variation to be storedto data storage server 40.

Referring to FIG. 2 and FIG. 3 together, the cluster of data processingterminals 30-1 to 30-n extracts the real path accessed by the user. Thisprocess is described as follows:

As illustrated in FIG. 2, when the user travels through the applicationdelivery network 20 while accessing the access source station 70 via theterminal 60, the user may travel through a plurality of nodes on theoptimal path delivered by the control server 10 to the network accessterminals in the application delivery network 20. Due to networkconditions, node status and the like factors, the real path of the userin the application delivery network is not necessarily the optimal path,and the real path may vary depending on the link and node status.

For the sake that the network path optimization system is capable oftruly reflecting real link status of each optimal path and acquiringreal access path information, the control server 10 needs to assign apath code (pathID) to each optimal path, and determine a path parameterfor each optimal path, for example, time (pathTime) elapsed forcomputing the optimal path.

In this embodiment, a link information format delivered by the controlserver 10 to the network access terminal includes the path code(pathID), and the time (pathTime) for computing the optimal path. Thecluster of data processing terminals 30-1 to 30-n judges variations ofthe path based on the path code while extracting the real path, whereinthe path having the same path code is the real path that is currentlyaccessed. The specifically accessed network access terminal adds a pathtag (sessionID) on the link information based on the variation betweenthe real path and the optimal path, such that the link informationincludes three parts, which are specifically, the path code (pathID),the time (pathTime) elapsed for computing the optimal path, and the pathtag (sessionID). The accessed network access terminal extracts thevariations of the path codes, and establishes the history log.

For example, in an application delivery network of a company, thecontrol server detects based on history logs that an optimal pathbetween a user terminal and an access source station frequently varies,a detection result at a moment is subject to a high delay ratio and ahigh packet loss ratio. By analysis based on the history log, this caseis occasional, and the optimal path may not be adjusted but the existinglink path may be still used. Therefore, reference to the history log mayprevent frequent path switching caused by an occasional case. In anotheroptimization scenario, after the optimal path is linked, a networkaccess terminal node is frequently subject to link disconnection. Basedon the statistics of the history logs, the network access terminal nodeis frequently disconnected from the link, and thus the control servermodifies the weight of the network access terminal node to avoid thisnode but select another network access terminal node during pathselection.

The operating process of the network path optimization system is asfollows: The control server 10 detects a delay ratio, a packet lossratio and the like information between each two network access terminalnodes and the access source station, and computes an optimal path basedon the data. Information of the optimal path is sent to the applicationdelivery network 20, and meanwhile uploaded to the cluster of dataprocessing terminals 30-1 to 30-n. In addition, the delay ratio, thepacket loss ratio, the error code and the like information detected bythe control server 10 are uploaded to the cluster of data processingterminals 30-1 to 30-n. For the sake that data allocation andtransmission and data analysis are directed to a particular clientaccess path, in this technical solution, the path code (pathID, whereineach optimal path has a unique identifier) and time (pathTime, which isa time identifier for each optimal path computation) are added to theoptimal path (BestPath). The format thereof is as follows:

BestPath: rtt, lost, weight, pathID, timeID

BestPath: indicates an optimal path computed by the control server 10.

rtt: indicates an average delay of the optimal path.

lost: indicates an average packet loss ratio of the optimal path.

pathID: indicates a path code of the path, wherein the same path has thesame path ID.

timeID: indicates the time elapsed for computing the optimal path.

The access log generated by each network access terminal node in theapplication delivery network may be likewise uploaded to the cluster ofdata processing terminals 30-1 to 30-n. Due to the network and thenodes, the real path accessed by the user may be somewhat different fromthat determined by the control server 10. For example, one node on theoptimal path may be non-communicative, and in this case, the user mayhop over this node. Therefore, each access log of the node may be addedwith a path code, time elapsed for computing the optimal path and a pathtag (pathID/pathTime/sessionID). Assuming that each access log isoriginally accessContent, and is currently accessContentpathID/pathTime/sessionID.

The path code and the time elapsed for computing the optimal path aredelivered by the smart control server 10 to the application deliverynetwork 20, and the path tag is generated by the network access terminalnode when the user accesses the network access terminal node. The pathcode, the time elapsed for computing the optimal path and the path tagare defined to conveniently find the real path accessed by the user.

The cluster of data processing terminals 30-1 to 30-n computes the pathparameter and the history log of the optimal path, and sends acomputation result of the error code, the average delay, the packet lossratio and the like information of each path to the data storage server40 for storage. The interface server 50 may proactively periodicallysends the computed data to the control server 10, and meanwhile monitora request form the control server 10. The control server 10 may make acorresponding adjustment with reference to the computed data whencomputing the optimal path based on the computed data.

Embodiment 2

Referring to FIG. 4, in the network path optimization method, inresponse to a request from a user, an optimal path is provided; a pathtag is added based on a real path at a network access terminal; ahistory log of the path tag is established; an average delay ratio, apacket loss ratio, an error code and the like parameter variationresults between nodes are computed; and the optimal path is optimizedbased on the parameter variation, such that a switching frequency of thelink path is lowered, and the network link is more rapid and stable.

The network path optimization method according to this embodimentincludes the following steps:

step 101: in response to a network access request, computing and sendingan optimal path having a path code and carrying a path parameter,wherein the control server 10, in response to the network access requestfrom the user, computes the optimal path having the path code andcarrying the path parameter, ands sends the optimal path to a networkaccess terminal interconnected to a user terminal in the applicationdelivery network 20, and meanwhile sends the optimal path to the clusterof data processing terminals 30-1 to 30-n;

step 102: adding a path tag to the optimal path based on a real path,wherein the network access terminal interconnected to the user terminaladds the path tag to the optimal based on the real path;

step 103: determining a parameter variation between the optimal path andthe real path based on the path parameter and the path tag, wherein thecluster of data processing terminals 30-1 to 30-n determines theparameter variation between the optimal path and the real path based onthe path parameter and the path tag; and

step 104: updating the optimal path based on the parameter variation;wherein the control server 10 updates the optimal path based on theparameter variation.

The optimal path includes a plurality of nodes, and the path parameterincludes a path weight of a node and time elapsed for computing theoptimal path.

The step of determining a parameter variation between the optimal pathand the real path based on the path parameter and the path tag includesthe following steps:

analyzing a delay ratio or a packet loss ratio between the nodes on theoptimal path, and determining node status; and

adjusting the path weight of the node based on the node status.

The network path optimization method further includes storing theparameter variation, the adjusted optimal path and the path parameter toa data storage server.

The parameter variation includes an error code, and the step of updatingthe optimal path based on the parameter variation includes the followingsteps:

predefining an adjustment threshold based on the error code;

scanning a parameter variation under a corresponding path based on thepath code; and

when a scanned error code is greater than or equal to an adjustmentthreshold, adjusting a path parameter of a corresponding path; and whenthe scanned error code is constantly greater than or equal to theadjustment threshold, adjusting a weight of a node with the error codeon the corresponding path.

Hereinafter, the network path optimization method is described from theperspective of the control server.

Referring to FIG. 5, a flowchart of practicing the network pathoptimization method by the data processing terminals is given.

The network path optimization method by the data processing terminalsincludes the following steps:

step 201: in response to a network access request, computing and sendingan optimal path having a path code and carrying a path parameter;

step 202: acquiring a parameter variation between the optimal path andthe real path that is obtained by analysis based on the path parameterand the path tag, wherein the path tag is added to the optimal pathbased on the real path; and

step 203: updating the parameter variation and storing the pathvariation.

The step of updating the parameter variation includes:

analyzing a delay ratio or a packet loss ratio between the nodes on theoptimal path, and determining node status; and

adjusting a path weight of the node based on the node status.

Referring to FIG. 6, a flowchart of practicing the network pathoptimization method by each network access terminal is given.

The network path optimization method by each network access terminalaccording to this embodiment includes the following steps:

step 301: receiving an optimal path having a path code and carrying apath parameter that is computed in response to a network access request,wherein the optimal path is originated from the control server 10;

step 302: adding a path tag to the optimal path based on a real path;

step 303: uploading the optimal path with the added path tag to a dataprocessing terminal cluster, wherein the data processing terminalcluster determines a parameter variation between the optimal path and areal path based on the path parameter and the path tag; and

step 304: receiving an optimal path updated based on the parametervariation, wherein the optimal path is sent by the control server 10.

Referring to FIG. 7, a flowchart of practicing the network pathoptimization method by each data processing terminal is given.

The network path optimization method by each data processing terminalaccording to this embodiment includes the following steps:

step 401: receiving an optimal path having a path code and carrying apath parameter that is computed in response to a network access request,wherein the optimal path is originated from the control server 10;

step 402: acquiring a path tag that is added to the optimal path basedon a real path, and acquiring data of the path tag from a correspondingnetwork access terminal;

step 403: determining a parameter variation between the optimal path andthe real path based on the path parameter and the path tag, wherein theparameter variation is used for updating the optimal path; and

step 404: sending the parameter variation to be stored, wherein theparameter variation is stored in the data storage server 40.

in the network path optimization method and system according to theembodiments of the present application, a network access terminalprovides an optimal path in response to a request from a user; thenetwork access terminal adds a path tag to the optimal path based on areal path, for example, an average delay ratio and a packet loss ratioor an error code or the like between nodes, establishes a history logbased on the path tag, computes a parameter variation based on thehistory log, and updates the optimal path based on the parametervariation, such that switching frequency of link paths is reduced, andnetwork links are more stable. In addition, in the network pathoptimization method and system, a control server acquires a parametervariation of a coded optimal path; the control server adjusts the pathparameter and the optimal path based on a parameter variationcomputation result stored in the data storage server 40, for example,error rate and the like information, to provide an optimal path which isdynamically adaptive to the current network environment or adjust aweight of a node on the optimal path, such that the optimal path isupdated and adjusted.

Embodiment 3

FIG. 11 is a schematic structural diagram illustrating hardware of anelectronic device 600 for performing the network path optimizationmethod according to an embodiment of the present application.

As illustrated in FIG. 11, the electronic device 600 includes at leastone processor 610, a memory 620 and a communication component 650, andFIG. 11 uses one processor 610 as an example. The memory 620 storesinstructions executable by the at least one processor 610. Theinstructions, when being executed by the at least one processor, mayestablish a data channel via the communication component 650, and causethe at least one processor to perform the network path optimizationmethod.

The at least one processor 610, the memory 620 and the communicationcomponent 650 may be connected via a bus or in another manner, and FIG.11 uses the bus as an example.

The memory 620, as a non-volatile computer-readable storage medium, maybe configured to store non-volatile software programs, and non-volatilecomputer executable programs and modules, for example, the programinstructions/modules (for example, the allocating module 12, theacquiring module 14 and the adjusting module 16 as illustrated in FIG.11, and the receiving module 25, the tagging module 27 and thetransferring module 29 as illustrated in FIG. 12) corresponding to thenetwork path optimization methods according to the embodiments of thepresent application. The non-volatile software programs, instructionsand modules stored in the memory 620, when being executed by theprocessor 610, cause the processor 610 to perform various functionapplications and data processing of a server, that is, performing thenetwork path optimization methods according to the above methodembodiments.

The memory 620 may include a program memory area and data memory area,wherein the program memory area may store operation systems andapplication programs needed by at least function; and the data memoryarea may store data created according to the usage of the electronicdevice of a robot. In addition, the memory 620 may include a high speedrandom access memory, or include a non-volatile memory, for example, atleast one disk storage device, a flash memory device, or anothernon-volatile solid storage device. In some embodiments, the memory 620optionally includes the memory remotely arranged relative to theprocessor 610, and such remote memory may be connected to the electronicdevice over the network. Examples of the above network include, but notlimited to, the Internet, Intranet, local area network, mobilecommunication network and a combination thereof.

One or more modules are stored in the memory 620, which, when beingexecuted by the at least one processor 610, perform the network pathoptimization method according to any of the above method embodiments,for example, performing steps 101 to 104 in the method as illustrated inFIG. 4, steps 201 to 203 in the method as illustrated in FIG. 5 andsteps 301 to 304 in the method as illustrated in FIG. 6; andimplementing the functions of the allocating module 12, the acquiringmodule 14 and the adjusting module 16 as illustrated in FIG. 8, and thereceiving module 25, the tagging module 27 and the transferring module29 as illustrated in FIG. 9.

The product may perform the method according to the embodiments of thepresent application, has corresponding function modules for performingthe method, and achieves the corresponding beneficial effects. Fortechnical details that are not illustrated in detail in this embodiment,reference may be made to the description of the methods according to theembodiments of the present application.

An embodiment of the present application provides a non-volatilecomputer-readable storage medium. The computer-readable storage mediumstores computer-executable instructions, which, when being executed byat least one processor, cause the at least one processor to performsteps 101 to 104 in the method as illustrated in FIG. 4, steps 201 to203 in the method as illustrated in FIG. 5 and steps 301 to 304 in themethod as illustrated in FIG. 6, and further implement the functions ofthe allocating module 12, the acquiring module 14 and the adjustingmodule 16 as illustrated in FIG. 8, and the receiving module 25, thetagging module 27 and the transferring module 29 as illustrated in FIG.9.

The above described apparatus embodiments are merely for illustrationpurpose only. The units which are described as separate components maybe physically separated or may be not physically separated, and thecomponents which are illustrated as units may be or may not be physicalunits, that is, the components may be located in the same position ormay be distributed into a plurality of network units. A part or all ofthe modules may be selected according to the actual needs to achieve theobjectives of the technical solutions of the embodiments.

According to the above embodiments of the present application, a personskilled in the art may clearly understand that the embodiments of thepresent application may be implemented by means of hardware or by meansof software plus a necessary general hardware platform. Persons ofordinary skill in the art may understand that all or part of the stepsof the methods in the embodiments may be implemented by a programinstructing relevant hardware. The program may be stored in acomputer-readable storage medium and may be executed by at least oneprocessor. When the program runs, the steps of the methods in theembodiments are performed. The storage medium may be any medium capableof storing program codes, such as read-only memory (ROM), a randomaccess memory (RAM), a magnetic disk, or a compact disc-read only memory(CD-ROM).

Finally, it should be noted that the above embodiments are merely usedto illustrate the technical solutions of the present application ratherthan limiting the technical solutions of the present application. Underthe concept of the present application, the technical features of theabove embodiments or other different embodiments may be combined, thesteps therein may be performed in any sequence, and various variationsmay be derived in different aspects of the present application, whichare not detailed herein for brevity of description. Although the presentapplication is described in detail with reference to the aboveembodiments, persons of ordinary skill in the art should understand thatthey may still make modifications to the technical solutions describedin the above embodiments, or make equivalent replacements to some of thetechnical features; however, such modifications or replacements do notcause the essence of the corresponding technical solutions to departfrom the spirit and scope of the technical solutions of the embodimentsof the present application.

What is claimed is:
 1. A network path optimization method, comprising:in response to a network access request, computing and sending anoptimal path having a path code and carrying a path parameter; adding apath tag to the optimal path based on a real path; determining aparameter variation between the optimal path and the real path based onthe path parameter and the path tag; and updating the optimal path andthe path parameter based on the parameter variation.
 2. The methodaccording to claim 1, wherein the optimal path is established between aplurality of nodes, and the path parameter comprises a path weight of anode and time elapsed for computing the optimal path, and thedetermining the parameter variation between the optimal path and thereal path based on the path parameter and the path tag comprises:analyzing a delay ratio or a packet loss ratio between the nodes on theoptimal path, and determining node status; and adjusting the path weightof the node based on the node status.
 3. The method according to claim2, further comprising: storing the updated optimal path and the updatedpath parameter to a data storage server.
 4. The method according toclaim 1, wherein the parameter variation comprises an error code, andthe step of updating the optimal path and the path parameter based onthe parameter variation comprises: predefining an adjustment thresholdbased on the error code; scanning a parameter variation under acorresponding optimal path based on the path code; and when a scannederror code is greater than or equal to an adjustment threshold,adjusting a path parameter of a corresponding path; and when the scannederror code is constantly greater than or equal to the adjustmentthreshold, adjusting a weight of a node with the error code on thecorresponding path.
 5. A network path optimization method, comprising:in response to a network access request, computing and sending anoptimal path having a path code and carrying a path parameter; acquiringa parameter variation between the optimal path and a real path byanalyzing the path parameter and a path tag, the path tag being added tothe optimal path based on a variation of the real path; and updating theoptimal path and the path parameter based on the parameter variation. 6.The method according to claim 5, wherein the optimal path is establishedbetween a plurality of nodes, and the path parameter comprises a pathweight of a node and time elapsed for computing the optimal path, andthe updating the optimal path and the path parameter based on theparameter variation comprises: analyzing a path parameter and aparameter variation between the nodes on the optimal path, determiningnode status, wherein the parameter variation comprises a delay ratio anda packet loss ratio; and adjusting the path weight of the node based onthe node status.
 7. A network path optimization system, comprising acontrol server, a plurality of network access terminals and a cluster ofdata processing terminals, the plurality of network access terminalsconstructing a network, the plurality of network access terminals beingcommunicably connected to the control server and the data processingterminal cluster, and the control server being communicably connected tothe data processing terminal cluster; wherein the control server isconfigured to, in response to a network access request, compute and sendan optimal path having a path code and carrying a path parameter; theaccess network terminal is configured to add a path tag to the optimalpath based on a real path; the cluster of data processing terminals isconfigured to determine a parameter variation between the optimal pathand the real path based on the path parameter and the path tag; and thecontrol server is further configured to update the optimal path and thepath parameter based on the parameter variation.
 8. The system accordingto claim 7, wherein the optimal path comprises a plurality of nodes, thepath parameter comprises path weights of the nodes and time elapsed forcomputing the optimal path; wherein the data processing terminal clusteris further configured to analyze a delay ratio or a packet loss ratiobetween nodes on the optimal path, and determine node status; and thecontrol server is further configured to adjust the path weights of thenodes based on the node status, and update the optimal path based on thepath weights.
 9. The system according to claim 7, further comprising adata storage server communicably connected to the data processingterminal cluster; wherein the data storage server is configured to storethe parameter variation and the updated optimal path and path parameter.10. The system according to any one of claim 7, wherein the parametervariation comprises an error code and an adjustment threshold predefinedbased on the error code; wherein the control server is furtherconfigured to scan the parameter variation under a corresponding pathbased on the path code; the control server is configured to adjust thepath parameter of the corresponding path if the scanned error code isgreater than or equal to the adjustment threshold; and the controlserver is configured to adjust the weight of a node which encounters anerror code on the corresponding path if the scanned error code isconstantly greater than or equal to the adjustment threshold.